Platform Explorer / Nuxeo Platform LTS 2017 9.10

Component org.nuxeo.directory.mongodb.MongoDBDirectoryFactory

Documentation

MongoDB-based implementation for Directory

Implementation

Class: org.nuxeo.directory.mongodb.MongoDBDirectoryFactory

Extension Points

XML Source

<?xml version="1.0"?>
<component name="org.nuxeo.directory.mongodb.MongoDBDirectoryFactory">

  <implementation class="org.nuxeo.directory.mongodb.MongoDBDirectoryFactory"/>

  <require>org.nuxeo.runtime.mongodb.MongoDBComponent</require>
  <require>org.nuxeo.ecm.directory.DirectoryServiceImpl</require>
  <require>org.nuxeo.ecm.directory.sql.SQLDirectoryFactory</require>

  <documentation>
    MongoDB-based implementation for Directory
  </documentation>

  <extension-point name="directories">
    <documentation>
      This extension point can be used to register new MongoDB-based directories. The extension can contain any number
      of directories declarations of the form:
      <code>
        <directory name="userDirectory">
          <schema>vocabulary</schema>
          <types>
            <type>system</type>
          </types>
          <idField>username</idField>
          <passwordField>password</passwordField>
          <passwordHashAlgorithm>SSHA</passwordHashAlgorithm>
          <autoincrementIdField>false</autoincrementIdField>
          <createTablePolicy>on_missing_columns</createTablePolicy>
          <dataFile>setup.csv</dataFile>
          <dataFileCharacterSeparator>,</dataFileCharacterSeparator>
          <references>
            <reference field="groups" directory="groupDirectory"
                collection="user2group" sourceField="userId" targetField="groupId"
                dataFile="user2group.csv"/>
          </references>
          <permissions>
            <permission name="Read">
              <group>mygroup</group>
              <group>mygroup2</group>
              <user>Administrator</user>
            </permission>
            <permission name="Write">
              <group>mygroup3</group>
            </permission>
          </permissions>
        </directory>
      </code>
      If you want to customize the MongoDB connection used in the directory, you can contribute a new connection
      configuration to MongoDBComponent with id 'directory/[directory@name]'. In the example above the id will be
      'directory/userDirectory'
    </documentation>

    <object class="org.nuxeo.directory.mongodb.MongoDBDirectoryDescriptor"/>
  </extension-point>

</component>